import axios from "axios";

// 封装一个请求
//通过create方法创建一个axios实例
const instance = axios.create({
  baseURL: process.env.VUE_APP_BASE_API,
  timeout: 1000,
  headers: {
    'X-Custom-Header': 'foobar'
  }
});

//axios拦截器 :关于请求方面公共配置的位置
// 添加请求拦截器
instance.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么:携带token，或者公共的参数
  config.params.key = "09eb51f4c41b7659e58cbb31eb03661d"
  
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
  // 对响应数据做点什么：一般是对后端返回的状态码进行解析提示
  // 
  console.log(typeof (response.data.infocode))
  const code = response.data.infocode * 1

  switch (code) {
    case 10001:
      alert("key错误");
    case 10002:
      alert("路径错误");
  }

  return response;
}, function (error) {
  
  // 对响应错误做点什么
  return Promise.reject(error);
});

export default instance;